//: C23:Autoexcp.cpp
// From Thinking in C++, 2nd Edition
// Available at http://www.BruceEckel.com
// (c) Bruce Eckel 1999
// Copyright notice in Copyright.txt
// No matching conversions
#include <iostream>
using namespace std;

class Except1 {};
class Except2
{
public:
    Except2(Except1&) {}
};

void f()
{
    throw Except1();
}

int main()
{
    try {
        f();
    } catch (Except2) {
        cout << "inside catch(Except2)" << endl;
    } catch (Except1) {
        cout << "inside catch(Except1)" << endl;
    }
} ///:~
